﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data; 


namespace Zzva.Common
{


///    public abstract class TBeBase: DataTable 
///    {
///        public TBeBase()
///        {
///            DataColumn fldId;
///            fldId = new DataColumn("Id",typeof(int));
///            fldId.AutoIncrement = true;
///            fldId.Unique = true;
///            this.Columns.Add(fldId);
///
///            DataColumn fldObozn;
///            fldObozn = new DataColumn("Obozn",typeof(string));
///            ////fldObozn.Unique = true;
///            this.Columns.Add(fldObozn);
///
///            DataColumn fldNaim;
///            fldNaim = new DataColumn("Naim",typeof(string));
///            this.Columns.Add(fldNaim);
///
///            //первичный ключ
///            DataColumn[] PprimeryKey;
///            PprimeryKey = new DataColumn[1];
///            PprimeryKey[0] = fldId;
///            this.PrimaryKey = PprimeryKey; 
///        }
///    }
















///    public class TOrder : TBeBase
///    {
///        public TOrder()
///        {
///            //планируеая дата окончания производства 
///            DataColumn fldDateEnd;
///            fldDateEnd = new DataColumn("DateEnd", typeof(DateTime));
///            this.Columns.Add(fldDateEnd);
///        }
///    }







///    public class TOrderItem : TBeBase
///    {
///        public TOrderItem()
///        {
///            //ссылка на заказ
///            DataColumn fldOrder;
///            fldOrder = new DataColumn("Order", typeof(int));
///            this.Columns.Add(fldOrder);
///
///            //ссылка на Компонент
///            DataColumn fldComponent;
///            fldComponent = new DataColumn("Component", typeof(int));
///            this.Columns.Add(fldComponent);
///    
///            DataColumn fldCol;
///            fldCol = new DataColumn("Col", typeof(int));
///            this.Columns.Add(fldCol);
///        }
///
///    }




///    public class TComponent : TBeBase
///    {
///        public TComponent()
///        {
///            DataColumn fldDse;
///            fldDse = new DataColumn("Dse", typeof(string));
///            this.Columns.Add(fldDse);
///
///            DataColumn fldDisp;
///            fldDisp = new DataColumn("Disp", typeof(string));
///            this.Columns.Add(fldDisp);
///
///            //ссылка на заказ
///            DataColumn fldOrder;
///            fldOrder = new DataColumn("Order", typeof(int));
///            this.Columns.Add(fldOrder);
///
///            DataColumn fldDopIsp;
///            fldDopIsp = new DataColumn("DopIsp", typeof(int));
///            this.Columns.Add(fldDopIsp);
///
///            DataColumn fldRazd;
///            fldRazd = new DataColumn("Razd", typeof(byte));
///            this.Columns.Add(fldRazd);
///
///            DataColumn fldFlgDop;
///            fldFlgDop = new DataColumn("FlgDop", typeof(bool));
///            this.Columns.Add(fldFlgDop);
///
///            DataColumn fldOboznAltern;
///            fldOboznAltern = new DataColumn("OboznAltern", typeof(string));
///            //fldObozn.Unique = true;
///            this.Columns.Add(fldOboznAltern);
///
///            //способ воспроизводства по умолчанию
///            //комплектующее, материал, производственный компонент, 
///            DataColumn fldTtype;
///            fldTtype = new DataColumn("Ttype", typeof(byte));
///            this.Columns.Add(fldTtype);
///        }
///    }











///    public class TSostav : TBeBase
///    {
///        public TSostav()
///        {
///            //ссылка на Компонент
///            DataColumn fldComponent;
///            fldComponent = new DataColumn("Component", typeof(int));
///            this.Columns.Add(fldComponent);
///
///            //ссылка на Родителя Компонента
///            DataColumn fldComponentParent;
///            fldComponentParent = new DataColumn("ComponentParent", typeof(int));
///            this.Columns.Add(fldComponentParent);
///
///            //Количество Компонента в Родителе
///            DataColumn flgCol;
///            flgCol = new DataColumn("Col", typeof(float));
///            this.Columns.Add(flgCol);
///
///            //ссылка на Элемент Заказа
///            DataColumn fldOrderItem;
///            fldOrderItem = new DataColumn("OrderItem", typeof(int));
///            this.Columns.Add(fldOrderItem);
///
///            //Количество Компонента в Элементе Заказа
///            DataColumn flgColInOrderItem;
///            flgColInOrderItem = new DataColumn("ColInOrderItem", typeof(float));
///            this.Columns.Add(flgColInOrderItem);
///        }
///    }






///    //главный календарный план производства
///    public class TMps : TBeBase
///    {
///        public TMps()
///        {
///            //ссылка на заводской заказ
///            DataColumn fldOrder;
///            fldOrder = new DataColumn("Order", typeof(int));
///            this.Columns.Add(fldOrder);
///
///            //планируеая дата окончания производства 
///            DataColumn fldDateEnd;
///            fldDateEnd = new DataColumn("DateEnd", typeof(DateTime));
///            this.Columns.Add(fldDateEnd);
///        }
///    }




    //полуфабрикат
///    public class THalf : TBeBase
///    {
///        public THalf()
///        {
///            //ссылка на родительский Компонент
///            DataColumn fldComponent;
///            fldComponent = new DataColumn("Component", typeof(int));
///            this.Columns.Add(fldComponent);
///
///            //Фаза изготовления компонента согласно маршрута
///            DataColumn fldPhase;
///            fldPhase = new DataColumn("Phase", typeof(byte));
///            this.Columns.Add(fldPhase);
///
///            //Флаг, что это завершающая фаза изготовления компонента
///            DataColumn fldPhaseEnd;
///            fldPhaseEnd = new DataColumn("PhaseEnd", typeof(bool));
///            this.Columns.Add(fldPhaseEnd);
///
///            //Ссылка на цех, который выпустил полуфабрикат
///            DataColumn fldCeh;
///            fldCeh = new DataColumn("Ceh", typeof(int));
///            this.Columns.Add(fldCeh);
///        }
///     }











}
